CSA Data Uploader で Linux環境からSQL ServerにODBC接続する
はじめに
クラスメソッドが展開しているデータ統合基盤サービス『CSアナリティクス』(以降"CSA")のプロダクト群の1つ、『Data Uploader』をLinux環境で起動してSQL ServerにODBC接続してみました。
今回、私が行った手順について書きたいと思います。Windowsでの手順については以下を参照ください。
クラウドストレージへのファイルアップロード&ETLツール『Data Uploader』の入力にODBC接続データを指定する
前提条件
今回はLinux環境として Amazon Linux 2 の Dockerイメージを使用しました。また接続するSQL Serverは既に稼働済みのものとします。
事前準備:データーベース環境及びODBCドライバ設定を用意
Linux上でODBCドライバの設定を行います。コマンドとしては以下を実行しました。
$ sudo su $ curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssql-release.repo $ exit $ sudo yum remove unixODBC-utf16 unixODBC-utf16-devel $ sudo ACCEPT_EULA=Y yum install -y msodbcsql17 $ sudo ACCEPT_EULA=Y yum install -y mssql-tools $ echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc $ source ~/.bashrc $ sudo yum install -y unixODBC-devel
UbuntuなどそのほかのLinuxディストリビューションなどから接続する際には、以下を参考に該当のディストリビューション用のドライバを設定するようにしてください。
Microsoft ODBC Driver for SQL Server をインストールする (Linux)
「sqlcmd」を使用し、SQL Serverに接続できるかを確認します。
$ sqlcmd -S 接続データベースホスト名 -U 接続データベースユーザー名 -P '接続データベースパスワード' 1>
接続できたら、CSA Data Uploader より取得したいデータが登録されているかを任意のクエリを実行して確認します(データがない場合はINSERTなどで登録しておいてください)。
1> USE devdu 2> GO Changed database context to 'devdu'. 1> SELECT * from dutest 2> GO col1 col2 ---------- ---------- aaa bbb (1 rows affected)
CSA DataUploader より接続するため「~/.odbc.ini」に接続設定を記述します。以下の例ではデータソース名として「csa-du-connection-sqlserver」としています。こちらは任意の文字列でも大丈夫です。
$ vi ~/.odbc.ini [csa-du-connection-sqlserver] Driver = ODBC Driver 17 for SQL Server SERVER = 接続データベースホスト名 PORT = 1433 Database = 接続データベース名 USER = 接続データベースユーザー名 Password = 接続データベースパスワード
CSA Data Uploader : ODBC接続設定
CSA Data UploaderでODBC接続を利用するための設定を行います。メニューの[設定]から[ODBC]を選択します。
[ODBC設定]画面が表示されるので[追加]ボタンを押下します。[データソースの追加]ダイアログが表示されるので
- [種別]に[SQL Server]を選択
- [データソース]に「~/.odbc.ini」に記載したデータソース名(今回は「csa-du-connection-sqlserver」)を選択
- [ユーザー名]に接続データベースユーザー名を入力
- [パスワード]に接続データベースパスワードを入力
します。
上記を入力し、[接続テスト]を押下して[OK]となるか確認します。接続が確認できたら[保存]ボタンを押下して設定を保存します。
CSA Data Uploader : ジョブによるデータ取得の確認
CSA Data Uploaderのジョブ一覧画面にて[ジョブを作成]を押下し、任意のジョブ名で[データアップロード]ジョブを作成します。
作成したジョブのジョブ詳細画面に遷移し、入力処理の追加で入力種別に[ODBC接続]を選択します。
[データソース名]で先ほど作成したODBC接続設定を選択します。[クエリ]欄に任意のクエリを入力し、[読み込みテスト]を押下して[OK]となるか確認します。 確認したら[保存]ボタンを押下します。
ジョブ詳細画面で[データ表示]を押下し、SQL Serverよりデータが正しく取得できるかを確認します。
まとめ
CSA Data Uploader をLinux環境で起動してSQL ServerにODBC接続してみる手順についてでした。CSA Data Uploaderは1ヶ月間のトライアル利用が可能となっています。興味をお持ち頂いた方は是非無料版ダウンロードページからインストーラを入手頂き、お試し頂けますと幸いです。